<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>HashRouter 原理</title>
    <style>
        #result{
            width: 400px;
            height: 300px;
            border:solid 1px #666;
        }
    </style>
</head>
<body>
    <div>
        <a href="#home">Home</a>
        <a href="#about">About</a>
        <hr>
        <div id="result"></div>

        <script>
            //获取 result 元素
            let result = document.querySelector('#result');

            //全局事件  hashchange  当页面 URL 中的锚点发生变化的时候, 会触发该事件  
            window.addEventListener('hashchange', function(){
                // console.log('事件触发了');
                //获取当前网页 URL 的锚点值
                // console.log(location); //location 是 window 的一个属性, 全局对象
                let hash = location.hash;

                //根据页面 URL 的锚点值, 决定页面的显示内容
                switch(hash){
                    case '#home':
                        result.innerHTML = 'Home Home Home'; 
                        break;
                    case '#about':
                        result.innerHTML = 'About About About';
                        break;
                    default: 
                        result.innerHTML = '404 not found';
                        break;
                }

            })

        </script>

    </div>
</body>
</html>